package com.basic.business.service;

import com.basic.business.model.dto.SysRoleDto;
import com.basic.business.model.entity.SysRole;
import com.basic.business.model.vo.SysRoleVo;
import com.github.pagehelper.*;

import java.util.List;

/**
 * 角色表(SysRole)表服务接口
 *
 * @author huage
 * @since 2021-07-20 14:33:46
 */
public interface SysRoleService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    SysRoleVo findById(Integer id);

    /**
     * 查询多条数据
     *
     * @param sysRoleDto 实例对象
     * @param pageNum    页数
     * @param pageSize   每页条数
     * @return 对象列表
     */
    PageInfo<SysRoleVo> findPageList(SysRoleDto sysRoleDto, int pageNum, int pageSize);

    /**
     * 新增数据
     *
     * @param sysRoleDto 实例对象
     * @return 实例对象
     */
    SysRoleVo add(SysRoleDto sysRoleDto);

    /**
     * 修改数据
     *
     * @param sysRoleDto 实例对象
     * @return 实例对象
     */
    SysRoleVo modify(SysRoleDto sysRoleDto);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean remove(Integer id);

    /**
     * 根据login查找用户角色
     * @param loginId
     * @return
     */
    List<SysRole> findByLoginId(Integer loginId);
}
